<?php
namespace app\share\controller;

use app\share\model\File;
use think\Validate;

class Upload
{
    public function __construct()
    {
        $this->file = new File();
    }
    /***
     * 文件上传
     * @param file  资源文件
     * @retunr  array
     */
    public function uploadFile()
    {
        #获取前端上传的文件
        $file = isset($_FILES['file']) ? $_FILES['file'] : "";
        if( empty($file) )
        {
            returnJson(-2003,'资源不能为空');
        }
        #文件大小和后缀验证
        $this->file->verification($file);
        #文件移动指定目录
        $data = $this->file->uploadFile($file);
        returnJson(200,'上传成功',$data);
    }
    /**
     *客户端文件上传凭证生成
     */
    public function upToken()
    {
        $input = input();
        $validate = new Validate([
            ['bucket_name', 'require', '存储空间不能为空'],

        ]);
        if(!$validate->check($input))
        {
            returnJson(-2003,$validate->getError());
        }
        $up_token['up_token'] = $this->file->upToken($input['bucket_name']);
        returnJson(200,'success',$up_token);
    }
}